# 导包
from time import sleep

from selenium import webdriver

# 获取浏览器驱动对象
driver = webdriver.Chrome()
## 最大化浏览器
driver.maximize_window()
## 隐式等待
driver.implicitly_wait(30)

# 打开url
driver.get("https://www.bilibili.com/?spm_id_from=333.1007.0.0")
sleep(2)
"""
    目标：滚动条操作
    
    需求：
        1. 启动暂停两秒
        2. 滚动条拉到最底下
    
    滚动条
        1. 为什么要操作滚动条
            在web自动化中有些特殊场景，如：滚动条拉到最底层，指定按钮才可用。
        2. 如何操作
            第一步：设置操作滚动条操作语句
                如：js = "window.scrollTo(0, 10000)"
                    0: 左边距 --> 水平滚动条
                    10000: 上边距 --> 垂直滚动条
                    
            第二步：调用执行滚动条js方法，将设置js语句传入方法中
                方法：driver.execute_script(js)
                
        3. 说明
            在selenium中没有直接提供定位滚动条组件方法，但是它提供了执行js语句方法，可以通过js语句来控制滚动条操作。
"""
# 第一步 设置js控制滚动条语句
js = "window.scrollTo(0, 10000)"
# 第二步 调用执行js语句方法
driver.execute_script(js)


# 暂停3秒
sleep(3)

# 关闭浏览器驱动对象
driver.close()
